iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0
DevOps

探索亞馬遜雨林30天系列 第 23

Day 23: 使用AWS ECR託管docker image

  • 分享至 

  • xImage
  •  

當需要把docker image放在網路供別人使用,或者系統部署的時候使用時,可以選擇把image推到AWS ECR,交給ECR託管。當然也可以選擇docker hub,但是如果要建private repository,需要訂閱docker hub提供的方案(個人方案$5/month),選擇AWS ECR可以根據資料傳輸計費,可以少花費一點$。

要在ECR託管docker image,首先需要在ECR新增repository。必須輸入namespace和name,以及選擇tag能不能被覆蓋,和加密方式。

新增完之後就可以看到Repository。

點進去之後,右上角的View push commands有指令教學要如何把image推上ECR。


在執行這些指令之前,因為需要用到AWS cli跟AWS溝通,所以需要先在local設定AWS configuration。

$ aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json

設定好之後,就可以登入AWS ECR和local的docker client,並且指定要把image推到哪裡。如果有成功登入,會出現Login Succeeded。

aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin 262969866776.dkr.ecr.us-east-1.amazonaws.com


然後就可以build docker image,image的名稱必須要跟ECR Repository的namespace/name一致,這樣push image的時候,才知道要推到哪個Repository。

build好之後,就可以打tag標記版本。

docker tag test/apache-server:latest 262969866776.dkr.ecr.us-east-1.amazonaws.com/test/apache-server:latest

最後,就可以push image到ECR。

push到ECR之後,就可以到ECR的介面看到push的紀錄。

參考資料:


上一篇
Day 22: 使用AWS Athena撈取s3資料
下一篇
Day 24: 結合AWS ECS和ECR部署servcie(上)
系列文
探索亞馬遜雨林30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言